package org.example.ai_chat.util;

/**
 * 针对表中存在不同类型进行枚举类映射
 */
public enum LeaseEnum {
    // 配套信息
    FACILITY_INFO_TYPE_APARTMENT(1, "公寓图片"),
    FACILITY_INFO_TYPE_ROOM(2, "房间图片"),

    // 标签信息
    LABEL_INFO_TYPE_APARTMENT(1, "公寓标签"),
    LABEL_INFO_TYPE_ROOM(2, "房间标签"),

    // 图片信息
    GRAPH_INFO_ITEM_TYPE_APARTMENT(1, "apartment"),
    GRAPH_INFO_ITEM_TYPE_ROOM(2, "room"),

    // 岗位信息
    SYSTEM_POST_STATUS_SUCCESS(1, "正常"),
    SYSTEM_POST_STATUS_FAIL(0, "停用"),

    // 预约看房信息
    VIEW_APPOINTMENT_STATUS_WAIT(1, "待看房"),
    VIEW_APPOINTMENT_STATUS_CANCEL(2, "已取消"),
    VIEW_APPOINTMENT_STATUS_SHOWING(3, "已看房"),

    // 租约信息
    LEASE_AGREEMENT_SIGN_CONFIRM_WAIT(1, "签约待确认"),
    LEASE_AGREEMENT_SIGN_CONFIRM_ALREADY(2, "已签约"),
    LEASE_AGREEMENT_CANCEL_ALREADY(3, "已取消"),
    LEASE_AGREEMENT_BECOME_DUE_ALREADY(4, "已到期"),
    LEASE_AGREEMENT_RENTAL_PEND_CONFIRM_WAIT(5, "退租待确认"),
    LEASE_AGREEMENT_LEASE_OUT(6, "已退租"),
    LEASE_AGREEMENT_RENEWAL_CONFIRM_WAIT(7, "续约待确认"),

    LEASE_AGREEMENT_SOURCE_TYPE_NEW_CONFIRM(1, "新签"),
    LEASE_AGREEMENT_SOURCE_TYPE_RENEWAL(2, "续约");

    private Integer code;
    private String description;

    LeaseEnum(Integer code, String description) {
        this.code = code;
        this.description = description;
    }

    public Integer getCode() {
        return code;
    }

    public String getDescription() {
        return description;
    }
}
